home *** CD-ROM | disk | FTP | other *** search
- 1 'HYPHEN.100 Rev.2 copyright 1983 by Alan Stein. No commercial use without permission.
- 2 'Permission granted to Sig-100 members for use and non-commerical duplication.
- 10 CLEAR500:MAXFILES=2:DEFSTRB,U,K,L,D,C:GOSUB500
- 20 TS=0:PA=0:LI="":BS=CHR$(136):UL=CHR$(95):RT$=CHR$(13)
- 30 SU=SL
- 40 CH=INPUT$(1,1):LI=LI+CH:IFEOF(1)GOTO200
- 50 IFCH=" "THEN90
- 60 IFCH=RT$THEN200
- 70 IFCH=ULTHENSU=SU+1ELSEIFCH=BSTHENSU=SU+2
- 80 GOTO40
- 90 IFLEN(LI)>=SU+1THEN200
- 100 GOTO40
- 200 IFFTHEN220ELSEIFLEN(LI)>(SU+6)THENGOSUB600
- 210 PRINT#2,LI;
- 220 LI=DU:DU="":TS=TS+1:PRINTTS
- 240 IFEOF(1)THEN300
- 250 IFPA=1THENPA=0:GOTO210
- 260 GOTO30
- 300 PRINTF$;" has been hyphenated. The printed text will be";TS;"lines of";SL+4;"characters."
- 310 END
- 500 FILES
- 505 INPUT"Which file do you want";F$:OPENF$FORINPUTAS1
- 510 INPUT"Do you want just a line count";Q$:F=0:IFQ$<>"y"THEN525
- 515 F=1:Q$="n":GOTO530
- 525 INPUT"Do you want the hyphenated file on tape";Q$
- 530 IFLEFT$(Q$,1)="n"THENOPEN"receiv"FOROUTPUTAS2:GOTO540
- 535 IFLEFT$(Q$,1)="y"THENOPEN"cas:receiv"FOROUTPUTAS2ELSE525
- 540 CLS:PRINTF$;" is the text file."
- 550 INPUT"What line length do you desire";SL:SL=SL-4:RETURN
- 600 DU=LEFT$(LI,SU-2):CLS:PRINTLI
- 620 FORI=1TO300:NEXTI
- 630 BEEP:K=INKEY$:IFK=""THEN620
- 640 LI=MID$(LI,SU-1)
- 650 PRINT@240,"(space)add letter.(ent)leave line alone.(-)'- ',(b)' ',(x)'' & breaks.";
- 660 PRINT@123+SU,CHR$(146):PRINT@163+SU,CHR$(152)
- 670 PRINT@120,DU+UL
- 680 K=INKEY$
- 685 ONINSTR("@-bx "+RT$,K)GOTO680,790,800,810,740,900:GOTO 680
- 740 DU=DU+LEFT$(LI,1):LI=MID$(LI,2):GOTO670
- 790 DU=DU+"-"
- 800 DU=DU+" "
- 810 TE$=LI:LI=DU:IFLEN(LI)<SU+1THENLI=LI+RT$
- 840 DU=TE$:IFCH=RT$THENPA=1
- 850 CLS:RETURN
- 900 LI=DU+LI:DU="":CLS:RETURN
-